/**

This file is part of MaCI/GIMnet.

MaCI/GIMnet is free software: you can redistribute it and/or modify it 
under the terms of the GNU Lesser General Public License as published 
by the Free Software Foundation, either version 3 of the License, or 
(at your option) any later version.

MaCI/GIMnet is distributed in the hope that it will be useful, but WITHOUT 
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 
FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public 
License for more details.

You should have received a copy of the GNU Lesser General Public 
License along with GIMnet. (See COPYING.LESSER) If not, see 
<http://www.gnu.org/licenses/>.

**/
#ifndef __MuRoSettingsFrame__
#define __MuRoSettingsFrame__

/**
@file
Subclass of SettingsFrame, which is generated by wxFormBuilder.
*/

#include "MuRo_Frames.h"

/** Implementing SettingsFrame */
class MuRoSettingsFrame : public SettingsFrame
{
protected:
	// Handlers for SettingsFrame events.
	void OnClose( wxCloseEvent& event );
        void OnSave( wxCommandEvent& event );
        void OnCancel( wxCommandEvent& event );
	
public:
	/** Constructor */
	MuRoSettingsFrame( wxWindow* parent );
        void SetSpeedScale(float aSpeedScale);
        void SetAngularSpeedScale(float aAngularSpeedScale);

        float GetSpeedScale() const;
        float GetAngularSpeedScale() const;
        

 private:
        float iSpeedScale;
        float iAngularSpeedScale;

        // Reads a double from the given wxTextCtrl, sets it to aValue,
        // returns false if value is not acceptable
        bool VerifyBoxToDouble(wxTextCtrl* aTextCtrl, double &aValue);
        
        // Sets the TwxTextCtrl boxes to show the current speeds
        void SetTextCtrlToCurrent();


};

#endif // __MuRoSettingsFrame__
